草庐IT

MySQL 枚举空值

全部标签

c# - 枚举可以包含字符串吗?

这个问题在这里已经有了答案:AssociatingenumswithstringsinC#(38个答案)关闭9年前。如何声明一个包含值字符串的enum?privateenumbreakout{page="String1",column="String2",pagenames="String3",row="String4"}

c# - C# 枚举中的空格

有没有办法在C#枚举常量中放置空格?我读过你可以通过这样做在VB中做到这一点:PublicEnumEnumWithSpacesConstantWithoutSpaces[ConstantWithSpaces]EndEnum...然后像这样访问它:PublicSubUsingEnumWithSpaces()DimfooAsEnumWithSpaces=EnumWithSpaces.[ConstantWithSpaces]EndSub这对我来说意味着CLR可以处理带空格的枚举。有没有办法在C#中做到这一点? 最佳答案 这篇博文可能对您有

c# - 将所有枚举保存在一个地方是个好主意吗?

当我构建类库时,我通常会创建一个文件Enums.cs来保存程序集中使用的所有枚举。这是一个例子:namespaceMyNamespace{publicenumColors{Red,Green,Blue}publicenumShapes{Circle,Square,Triangle}}这使我的所有枚举都易于查找、组织良好且易于在代码中访问。我想知道为什么这不是一个好主意? 最佳答案 通常按模块化而不是按种类来安排定义会更好。 关于c#-将所有枚举保存在一个地方是个好主意吗?,我们在Stac

c# - Lance Hunt 的 C# 编码标准 - 枚举混淆

我的团队最近开始使用LanceHunt'sC#CodingStandards文档作为巩固我们的编码标准的起点。有一项我们只是不明白其中的要点,这里的任何人都可以阐明它吗?该项目是编号77:Alwaysvalidateanenumerationvariableorparametervaluebeforeconsumingit.TheymaycontainanyvaluethattheunderlyingEnumtype(defaultint)supports.Example:publicvoidTest(BookCategorycat){if(Enum.IsDefined(typeof(

c# - 使用自定义解析器跳过空值

我想使用自动映射器在我的公共(public)数据契约(Contract)和我的数据库模型之间进行映射。我创建了一个类,它自动遍历所有契约(Contract)并创建映射。我遇到的唯一问题是,如果值不为空,我只想将值从契约(Contract)映射到数据库模型。我在这里查看了其他问题,但看不到使用自定义解析器的示例。这是我的一些代码varmapToTarget=AutoMapper.Mapper.CreateMap(contract,mappedTo);foreach(varpropertyincontract.GetProperties().Where(property=>property

c# - 如何通过参数化查询在数据库中插入空值

我有一个datetime数据类型:dttm数据库字段类型也是datatime现在我这样做:if(dttm.HasValue){cmd.Parameters.AddWithValue("@dtb",dttm);}else{//Itshouldinsertnullvalueintodatabase//throughcmd.Parameters.AddWithValue("@dtb",_____)}如何做到这一点。 最佳答案 这可以使用空合并运算符来完成:如果dttm的值为空,则DBNull.Value将被插入,否则将使用dttm的值cm

c# - 我们可以使用枚举作为类型安全的实体 ID 吗?

我们在EF6.1代码优先设置中使用一个相当大的模型,我们使用int作为实体ID。不幸的是,这并不像我们希望的那样类型安全,因为很容易混淆id,例如比较不同类型实体的id(myblog.Id==somePost.Id)或类似的。或者更糟:myBlog.Id++。因此,我想出了使用类型化ID的想法,因此您不能混淆ID。所以我们的博客实体需要一个BlogId类型。现在,显而易见的选择是使用一个包含在结构中的int,但您不能将结构用作键。而且你不能扩展int...-等等,你可以!使用枚举!所以我想到了这个:publicenumBlogId:int{}publicclassBlog{public

c# - 我如何在 SQL 中使用枚举而不在我的 SQL 脚本/过程中硬编码魔数(Magic Number)?

我们的C#代码中有枚举:publicenumJobStatus{Ready=0,Running=1,Cancelling=2,}这些值也存储在数据库字段中,我们有很多TSQL(主要是存储过程,以及一些批处理和SSIS)也处理数据:SELECTTOP1@JobSID=JobSIDFROMJobWHEREStatus=0/*JobStatus.Ready*/ORDERBYSubmitDateASCCREATETABLEImportCrossEffect(/*lotsdeleted*/SourcetinyintDEFAULT1NOTNULL--0:Unknown(default),1:Imp

c# - 如何在 C# 中为枚举类型应用 InterLocked.Exchange?

publicenumMyEnum{Value1,Value2}classMyClass{privateMyEnum_field;publicMyEnumField//addedforconvenience{get{return_field;}set{Interlocked.Exchange(ref_field,value);//ERRORCS0452}}}可以通过以下方式解决:publicenumMyEnum{Value1,Value2}publicclassMyClass2{privateint_field;//changetointpublicMyEnumField//addedf

c# - C# 如何决定将哪个枚举值作为返回值?有什么规定吗?

这个问题在这里已经有了答案:Non-uniqueenumvalues(8个答案)关闭8年前。我发现了一件很有趣的事——比如说:enumMyenum{a,b,c=0}publicclassProgram{staticvoidMain(string[]args){Myenumma=Myenum.a;Console.WriteLine(ma);}}结果是a,为什么?如果我说:enumMyenum{a,b=0,c}publicclassProgram{staticvoidMain(string[]args){Myenumma=Myenum.a;Console.WriteLine(ma);}}结